﻿using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using Comun;

namespace FacProFacu
{
    public class Paciente
    {
        public int AltaPaciente(string idPac, string sApe, string sNombre, string sTipoDoc, string sNumDoc, 
             string sFecNac, string sSexo, string sEstCivil, string sCelu, 
            string sCalle, string sAltura, string sPiso, string sDpto, string sLocal, 
            string sProv, string sTelef, string sTipCob, string sAsociado)
        {
            int nuevo = 0;

            Comun.Conexion conn = new Comun.Conexion();
            conn.Conectar();
            //conn.ComienzoTransaccion();

            if (conn.Errores.Cantidad() == 0)
            {
                conn.ComienzoTransaccion();
                DalcProFacu.Paciente paciente = new DalcProFacu.Paciente(conn);

                nuevo = paciente.AltaPaciente(idPac,sApe,sNombre,sTipoDoc,sNumDoc,sFecNac,sSexo, 
                        sEstCivil,sCelu,sCalle,sAltura,sPiso,sDpto,sLocal,sProv,sTelef,sTipCob,sAsociado);

                //this.Errores = logeo.Errores;
                conn.Desconectar();
            }
            return nuevo;
        }

        public int ModificacionPaciente(string idHC, string sApe, string sNombre, string sTipoDoc, string sNumDoc,
        string sFecNac, string sSexo, string sEstCivil, string sCelu,
        string sCalle, string sAltura, string sPiso, string sDpto, string sLocal,
        string sProv, string sTelef, string sTipCob, string sAsociado)
        {
            int nuevo = 0;

            Comun.Conexion conn = new Comun.Conexion();
            conn.Conectar();
            //conn.ComienzoTransaccion();

            if (conn.Errores.Cantidad() == 0)
            {
                //conn.ComienzoTransaccion();
                DalcProFacu.Paciente paciente = new DalcProFacu.Paciente(conn);

                nuevo = paciente.ModificacionPaciente(sApe, sApe,sNombre, sTipoDoc, sNumDoc, sFecNac, sSexo,
                        sEstCivil, sCelu, sCalle, sAltura, sPiso, sDpto, sLocal, sProv, sTelef, sTipCob, sAsociado);

                //this.Errores = logeo.Errores;
                conn.Desconectar();
            }
            return nuevo;
        }

        public int AltaHistoriaClinica(string sHistorial, string idPac)
        {
            int nuevo = 0;

            Comun.Conexion conn = new Comun.Conexion();
            conn.Conectar();
            //conn.ComienzoTransaccion();

            if (conn.Errores.Cantidad() == 0)
            {
                //conn.ComienzoTransaccion();
                DalcProFacu.Paciente paciente = new DalcProFacu.Paciente(conn);

                nuevo = paciente.AltaHistoriaClinica(sHistorial, idPac);

                //this.Errores = logeo.Errores;
                conn.Desconectar();
            }
            return nuevo;
        }

        public DataSet GetDatosPaciente(string sNumDoc)
        {
            DataSet Dt = new DataSet();

            Comun.Conexion conn = new Comun.Conexion();
            conn.Conectar();

            if (conn.Errores.Cantidad() == 0)
            {
                //conn.ComienzoTransaccion();
                DalcProFacu.Paciente paciente = new DalcProFacu.Paciente(conn);

                Dt = paciente.GetDatosPaciente(sNumDoc);

                //this.Errores = logeo.Errores;
                conn.Desconectar();
            }
            return Dt;
        }

        public DataSet GetPacienteHC(string sHisto)
        {
            DataSet Dt = new DataSet();

            Comun.Conexion conn = new Comun.Conexion();
            conn.Conectar();

            if (conn.Errores.Cantidad() == 0)
            {
                //conn.ComienzoTransaccion();
                DalcProFacu.Paciente paciente = new DalcProFacu.Paciente(conn);

                Dt = paciente.GetPacienteHC(sHisto);

                //this.Errores = logeo.Errores;
                conn.Desconectar();
            }
            return Dt;
        }

        public DataSet GetPacientesDia(string Profesional, string Especialidad)
        {
            DataSet Dt = new DataSet();

            Comun.Conexion conn = new Comun.Conexion();
            conn.Conectar();

            if (conn.Errores.Cantidad() == 0)
            {
                //conn.ComienzoTransaccion();
                DalcProFacu.Paciente paciente = new DalcProFacu.Paciente(conn);

                Dt = paciente.GetPacientesDia(Profesional,Especialidad);

                //this.Errores = logeo.Errores;
                conn.Desconectar();
            }
            return Dt;
        }


        public DataSet GetDatosPaciente()
        {
            DataSet Dt = new DataSet();

            Comun.Conexion conn = new Comun.Conexion();
            conn.Conectar();

            if (conn.Errores.Cantidad() == 0)
            {
                //conn.ComienzoTransaccion();
                DalcProFacu.Paciente paciente = new DalcProFacu.Paciente(conn);

                Dt = paciente.GetDatosPaciente();

                //this.Errores = logeo.Errores;
                conn.Desconectar();
            }
            return Dt;
        }
    }
}
